home *** CD-ROM | disk | FTP | other *** search
- /*
- FC_Shade Header
- */
-
- /***************************************************************************/
- /*** includes **************************************************************/
- /***************************************************************************/
-
- #include <intuition/intuition.h>
- #include <libraries/feelin.h>
-
- #include <proto/exec.h>
- #include <proto/layers.h>
- #include <proto/graphics.h>
- #include <proto/intuition.h>
- #include <proto/utility.h>
- #include <proto/feelin.h>
-
- /***************************************************************************/
- /*** shared variables ******************************************************/
- /***************************************************************************/
-
- extern struct FeelinBase *FeelinBase;
- #define SysBase FeelinBase -> SYS
- #define LayersBase FeelinBase -> Layers
- #define GfxBase FeelinBase -> Graphics
- #define IntuitionBase FeelinBase -> Intuition
- #define UtilityBase FeelinBase -> Utility
-
- extern struct FeelinClass *GadgetClass;
- extern ULONG FC_Area_Offset;
- extern ULONG FC_Gadget_Offset;
-
- /***************************************************************************/
- /*** class *****************************************************************/
- /***************************************************************************/
-
- struct LocalObjectData
- {
- FAreaData *AreaData;
-
- UBYTE Flags;
- UBYTE LastDrawn;
- UBYTE GadW;
- UBYTE GadH;
-
- FObject Gad_Close;
- FObject Gad_Iconify;
- FObject Gad_Zoom;
- FObject Gad_Depth;
- FObject Gad_Dragbar;
- FObject Gad_Size;
-
- FNotifyHandler *nn_window_active;
- FNotifyHandler *nn_window_title;
-
- FPalette * AScheme;
- FPalette * IScheme;
- };
-
- enum {
-
- FV_Shade_LastDrawn_None,
- FV_Shade_LastDrawn_Active,
- FV_Shade_LastDrawn_Inactive
-
- };
-
- #define FF_SHADE_BUFFER (1L << 0)
- #define FF_SHADE_ZOOM_IS_ICONIFY (1L << 1)
-
- /***/
-
- struct GAD_LocalObjectData
- {
- FAreaData *AreaData;
- UBYTE Type;
- UBYTE Flags;
- UWORD _pad0;
- APTR Gadget;
- // the following is only used by title bar gadget.
- FObject TDisplay;
- STRPTR Prep[2];
- };
-
- /***************************************************************************/
-
- #define TICKNESS 5
- #define TITLEX1 10
- #define TITLEY1 3
- #define TITLEX2 10
- #define TITLEY2 3
- #define SIZE (TICKNESS * 4)
-
- enum { FV_GadgetType_Close = 1,
- FV_GadgetType_Iconify,
- FV_GadgetType_Dragbar,
- FV_GadgetType_Zoom,
- FV_GadgetType_Depth,
- FV_GadgetType_Size };
-
- enum { FA_Gadget_Type = FCCA_BASE };
-
- enum { FM_Gadget_Active = FCCM_BASE,
- FM_Gadget_ZoomWindow,
- FM_Gadget_DepthWindow };
-
- #define FF_Draw_Title FF_Draw_Custom_1
- #define FF_Draw_Active FF_Draw_Custom_2
- /*
- struct LayerHookMsg
- {
- struct Layer *Layer;
- struct FeelinRect Rect;
- LONG OffsetX;
- LONG OffsetY;
- };
-
- struct BackFillHook
- {
- struct MinNode h_MinNode;
- ULONG (*h_Entry)();
- ULONG (*h_SubEntry)();
- APTR h_Data;
- ULONG Shine;
- ULONG Fill;
- ULONG Shadow;
- };
- */
- /*** Prototypes ************************************************************/
-
- struct RastPort * CreateRPBitMap(UWORD Width,UWORD Height,struct Screen *Scr);
- void DeleteRPBitMap(struct RastPort *rpb);
- struct FeelinRender * CreateRenderBuffer(UWORD Width,UWORD Height,struct FeelinRender *Friend);
- void DeleteRenderBuffer(struct FeelinRender *Render);
-
- //SAVEDS ASM struct RastPort * Shade_Erase(REG_A0 struct BackFillHook *Hook,REG_A2 struct RastPort *rp,REG_A1 struct LayerHookMsg *Msg);
-
- #define _Line(x1,y1,x2,y2) _Move(x1,y1); _Draw(x2,y2)
-
-